A complex program having many tasks and sub-tasks, many phases and many workers will often have an associated database with many users, each of which has a limited “need to know” that does not extend to all information in the database. An example is a database that includes information on individual personnel, including confidential evaluations and reports on supervisory interviews. A group of users having access to information in a particular portion of a database may need to edit one or more documents or other collections of information to restate the original information more conveniently or accurately.
What is needed is a database system that provides selective access to different portions of the database for different groups of users, where the different groups may have partly overlapping access group memberships. Preferably, the system should allow substantially simultaneous editing of one or more documents or other collections of information by one, two or all access group members. Preferably, the system should be flexible and should allow for change in definition of the portions of the database accessible by a specified access group.